﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Interfaces;
using Presentador;
using ReporteTrafico.App_Data;

namespace ReporteTrafico
{
    public partial class ConsultaTrafico : Page, IConsultaTrafico
    {
        //<summary>
        // Objeto del tipo PresentadorConsultaTrafico
        //</summary> 
        
        PresentadorConsultaTrafico traficoTR;

        //<summary>
        // Constructor
        //</summary> 
        public ConsultaTrafico()
        {
            traficoTR = new PresentadorConsultaTrafico(this);
        }

        // ESTO ES PARA QUE CADA VEZ QUE SE CARGE LA PÁGINA SE VALIDE SI HAY UN USUARIO LOGUEADO O NO...
        // REVISAR CORREO...
        protected void Page_Load(object sender, EventArgs e)
        {
            //Response.Cache.SetCacheability(HttpCacheability.NoCache);

            if (!IsPostBack)
            {
                traficoTR.ImprimeListaUbicacionTR();

                object usuarioLogueado = Session[Recursos.SesionUsuario];
                object idUsuarioLogueado = Session[Recursos.SesionIdUsuario];

                if (usuarioLogueado != null)
                {
                    HyperLinkCerrarSesion.Visible = true;

                    string login = Convert.ToString(usuarioLogueado);
                    infoUsuario = Recursos.Saludo + login.ToUpper() + Recursos.puntuacion;

                    infoIdUsuario = Convert.ToString(idUsuarioLogueado);

                }
                else
                {
                    infoUsuario = Recursos.Saludo + Recursos.UsuarioInvitado + Recursos.puntuacion;
                }
            }
            else
            {
                PanelLibertador.Visible = (UbicacionTR.SelectedItem.Text == Recursos.CamaraLibertador);
                PanelCumbres.Visible = (UbicacionTR.SelectedItem.Text == Recursos.CamaraCumbres);
            }
        }

        #region Encapsulamiento de Componentes
        public DropDownList UbicacionTR
        {
            get { return DropDownListUbicacionTR; }
            set { DropDownListUbicacionTR = value; }
        }

        public String idUbicacionTR
        {
            get { return DropDownListUbicacionTR.ID.ToString(); }
            set { value = DropDownListUbicacionTR.ID.ToString(); }
        }

        public String infoUsuario
        {
            get { return LabelUsuario.Text; }
            set { LabelUsuario.Text = value; }
        }

        public String infoIdUsuario
        {
            get { return LabelIdUsuario.Text; }
            set { LabelIdUsuario.Text = value; }
        }

       #endregion

        //<summary>
        // Método del DropDownList que asigna el DNS a consultar 
        //(Ubicación de la Cámara)
        //</summary> 
        //protected void TraficoenTiempoReal(object sender, EventArgs e)
        //{

        //}
   }
}
